#pragma once

class BasicView : public CView
{
// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(BasicView)
	//}}AFX_VIRTUAL


// Message handler delegates
protected:
	virtual int HandleCreate(LPCREATESTRUCT lpCreateStruct);
	virtual void HandleDestroy();
	virtual void HandlePaint();
	virtual BOOL HandleEraseBkgnd(CDC* pDC);
	virtual void HandleSize(UINT nType, int cx, int cy);
	virtual void HandleKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
	virtual void HandleKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
	virtual void HandleSysKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
	virtual void HandleSysKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
	virtual void HandleLButtonDown(UINT nFlags, CPoint point);
	virtual void HandleLButtonUp(UINT nFlags, CPoint point);
	virtual void HandleLButtonDblClk(UINT nFlags, CPoint point);
	virtual void HandleRButtonDown(UINT nFlags, CPoint point);
	virtual void HandleRButtonUp(UINT nFlags, CPoint point);
	virtual void HandleRButtonDblClk(UINT nFlags, CPoint point);
	virtual void HandleMouseMove(UINT nFlags, CPoint point);
	virtual void HandleMouseLeave();
	virtual BOOL HandleSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
	virtual void HandleSetFocus(CWnd* pOldWnd);
	virtual void HandleKillFocus(CWnd* pNewWnd);
	virtual void HandleHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
	virtual void HandleVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);

	// Generated message map functions
protected:
	//{{AFX_MSG(BasicView)
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
	afx_msg void OnDestroy();
	afx_msg void OnPaint();
	afx_msg BOOL OnEraseBkgnd(CDC* pDC);
	afx_msg void OnSize(UINT nType, int cx, int cy);
	afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
	afx_msg void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
	afx_msg void OnSysKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
	afx_msg void OnSysKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
	afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
	afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
	afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
	afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
	afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
	afx_msg void OnRButtonDblClk(UINT nFlags, CPoint point);
	afx_msg void OnMouseMove(UINT nFlags, CPoint point);
	afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
	afx_msg void OnSetFocus(CWnd* pOldWnd);
	afx_msg void OnKillFocus(CWnd* pNewWnd);
	afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
	afx_msg void OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
	//}}AFX_MSG
	afx_msg LRESULT OnMouseLeave(WPARAM wParam, LPARAM lParam);
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
